Hard disk drives are data storage devices for storing digital information or data which can be retrieved at a later time. A hard disk drive is a type of non-volatile memory that retains stored data irrespective of whether the drive has power. A hard disk drive comprises platters or disks coated with a magnetic material for storing charges. Data is stored by placing a charge on the magnetic material. The hard disk drive also comprises one or more read and write headers. The headers are configured to store charges to, and read charges from, the magnetic material of the platter. The headers are arranged on a moving actuator arm which positions the headers over the platters at the correct location to write data to, or read data from, the platters as the platters rotate at high speeds. The use of platters and headers permits data to be read from or written to a hard disk drive in a random-access manner. Randomly accessing data refers to reading or writing a first set of data at a first location on the platter and then a second set of data at second location on the platter without having to read or write data through all intervening locations between the first and second locations.
Platters are divided into multiple co-centric circular tracks, the circular tracks radiating from the centre to the edge of the platter. The tracks have a width. The tracks help identify or reference the physical location where data may be, or is, stored on the platter. The width of the tracks may correspond to the width of the read or write header. Adjacent tracks may be grouped into bands in the case of SMR HDDs.
FIG. 1 shows a top view of a portion of a platter 100 of a SMR HDD as known in the art. The platter 100 comprises tracks 102a-c, and bands 104 and 110. Tracks 102a-c overlap with each other in a “shingled” fashion. Tracks of a band 104 do not overlap, however, with tracks of another band. Overlapping tracks 102a-c permits more tracks to be stored on a platter of a given size thus increasing the data density of the platter and the hard disk drive. The amount of overlap between adjacent tracks 102a-c is determined by the size of a read header 106 and a write header 108 for the platter 100. Specifically, the area of a track 102a-c that is not masked by an adjacent track 102a-c must be at least as large as the width of the read header 106. This permits the read header 106 to only sense charges stored on one of the tracks 102a-c during a read operation. The width of the read header 106 can be made smaller than the width of a write header 108. Accordingly, the amount of overlap between adjacent tracks 102a-c is the difference between the width of the write header 108 and the width of the read header 106. The width of the write header 108 is larger than the unmasked area of a target track 102a. Accordingly, when writing data to the target track 102a, the write header 108 also incidentally stores the same data on an adjacent track 102b overlapping with the target track 102a. This causes complications when data is randomly being written to the tracks. Since the adjacent track 102b is on a higher layer than the target track 102a, writing data to the target track 102a overwrites data on the adjacent track 102b. 
To preserve the existing data on the adjacent track 102b in a SMR HDD, the existing data is read from the adjacent track 102b, temporarily stored, and only written back to the adjacent track 102b once the new data has been written to the target track 102a. But writing existing data back to the adjacent track 102b also incidentally stores that data on a second adjacent track 102c that is overlapping with the adjacent track 102b. Accordingly, when writing data to the target track 102a, all data on upper layer tracks 102b,102c must first be read and temporarily stored, then written back starting with the lowest layer track 102b and proceeding in order to the highest layer track. Failure to do so will result in loss of information.
If not for the difference in read header 106 and write header 108 widths, there would be no need to overlap tracks. Overlapping tracks improves the data density of a HDD by taking advantage of the smaller width of the read header as compared to the write header width. The trade-off for improved data density, however, is a potential decrease in write performance. The write performance (e.g. the amount of time required to write new data to a track) for an SMR HDD will typically be lower than the write performance for a non SMR HDD when data is written randomly to a band. Randomly writing data to an SMR HDD results in write amplification: for each track to which new data is written, multiple upper-layer tracks in the band, if any, must also be read from and written to.
Optimization methods have been developed to improve the write performance when randomly writing data to an SMR HDD. In one optimization method, random data is packaged into sequential data so that when sufficient data has been accumulated, it is all written sequentially to a band rather randomly at different times. This method randomly allocates tracks for all data (including data which is inherently sequential), however, which reduces the read performance for sequential data.
Improvements in write performance for the writing of random write data to an SMR HDD are desirable.